export default {
  // 在我们需要将共享数据进行处理后再展示在页面的情况下, 就需要使用getters对象, 相当于计算属性computed
  // getters中的方法也是有一个state参数, 指向state对象
  powerCount(state) {
    return state.count * state.count
  },
  // 需求1, 过滤state中的students, 取出年龄大于15的
  getAge15(state) {
    return state.students.filter(students => students.age > 15)
  },
  // 需求2, 获得年龄大于15的student的个数
  getAge15Num(state, getters) {
    // return state.students.filter(students => students.age > 15).length
    // getters对象中的方法, 除了state这个参数外, 还有getters参数, 这个参数指向getters对象
    // 所以上面的写法可以写成
    return getters.getAge15.length
  },
  // 需求3, 想要通过用户输入的年龄, 来决定输出大于该年龄的student
  // 要达到这个需求的话, 需要在方法中返回一个函数, 具体如下
  // 思路是return出去一个函数, 这个函数有一个形参, 这个形参由用户来决定
  getAge(state, getters) {
    return function (age) {
      return state.students.filter(students => students.age > age)
    }
  }
}